//package com.peng.my_blog.util;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.stereotype.Component;
//
//@Component
//public class RedisLock {
//    @Autowired
//    private RedisTemplate<String,Long> redisTemplate;
//    private static String LOCK_NAME = "LOCK_NAME";
//    private static long TIME_OUT = 50;
//    public  boolean lock(){
//        if(redisTemplate.opsForValue().setIfAbsent(LOCK_NAME,System.currentTimeMillis()+TIME_OUT)){
//            return true;
//        }
//        Long oldVal = redisTemplate.opsForValue().get(LOCK_NAME);
//        if(oldVal==null ||System.currentTimeMillis()>oldVal){
//            Long val = redisTemplate.opsForValue().getAndSet(LOCK_NAME, System.currentTimeMillis()+TIME_OUT);
//            return oldVal == null || val == null || val.equals(oldVal);
//        }
//        return false;
//    }
//
//    public void unLock(){
//        try {
//            Long val = redisTemplate.opsForValue().get(LOCK_NAME);
//            if(val!=null){
//                redisTemplate.opsForValue().getOperations().delete(LOCK_NAME);
//            }
//        } catch (Exception e) {
//            e.printStackTrace();
//            System.out.println("解锁失败！！！");
//        }
//    }
//}
